import baseURL from '@/utils/request/baseURL'

export default {
	baseURL: baseURL.API,
	getTimeStamp: () => {
		return new Date().getTime()
	},
	posUrl: url => { /* 判断url是否为绝对路径 */
		return /(http|https):\/\/([\w.]+\/?)\S*/.test(url)
	},
	// - 关于接口loading的配置
	loading: {
		limitTime: 0, // - 接口请求在xxxms内完成则不展示loading
		show: () => {
			uni.showLoading({
				title: 'Loading',
				mask: true
			})
		},
		hide: () => {
			setTimeout(() => {
				uni.hideLoading()
				uni.stopPullDownRefresh()
			}, 100)
		}
	},
	// - 接口请求的默认配置
	tipConfig: {
		storeBlock: false, // - store isBlock变量 用于页面加载
		storeLoading: false, // - store isLoading变量 用于请求按钮loaing
		storeLoadingMore: true, // - store loadingMore变量 用于加载更多
		isLoading: false, // - 是否展示loading，默认为true
		isErrorTip: true, // - 是否展示默认错误提示，默认为true
		isSuccessTip: false, // - 是否展示默认成功提示，默认为false
		isErrorAction: false, // - 是否使用自定义的错误处理方法，默认为false，如设置true则需在views层catch错误
		isSuccessAction: true, // - 是否使用自定义的成功处理方法，默认为true
		isErrorBack: false, // - 错误是否返回，默认为false
		isSuccessBack: false // - 成功是否返回，默认为false
	},
	// - 运行成功的判别标识  例如res.returnCode === '0'即成功
	resSuccess: {
		key: 'code', // - 与后台规定的表示响应成功的变量
		value: 200, // - 与后台规定的表示响应成功code
		tipShow: res => {
			uni.showToast({
				title: (res && (res.msg || res.message || '网络异常，请稍后重试')) || '网络异常，请稍后重试',
				icon: 'success',
				mask: true
			})
		}
	},
	// - 登录失效
	isLogout: {
		key: ['code', 'status'], // - 与后台规定的表示响应成功的变量
		value: [100, 999], // - 与后台规定的表示响应成功code
		tipShow: res => {
			uni.showToast({
				title: (res && (res.msg || res.message || '网络异常，请稍后重试')) || '网络异常，请稍后重试',
				icon: 'none',
				mask: true
			})
		}
	},
	// - 异常情况
	resError: {
		tipShow: err => { // - 异常默认提示的方法
			uni.showToast({
				title: (err && (err.msg || err.message || '网络异常，请稍后重试')) || '网络异常，请稍后重试',
				icon: 'none',
				mask: true
			})
		}
	}
}
